package com.qiguliuxing.dts.db.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.qiguliuxing.dts.db.mybatisHandler.JsonIntegerArrayTypeHandler;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

@Data
@TableName(value = "dts_coupon")
public class DtsCoupon {
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.name
     *
     * @mbg.generated
     */
    private String name;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.desc
     *
     * @mbg.generated
     */
    @TableField("`desc`")
    private String desc;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.tag
     *
     * @mbg.generated
     */
    private String tag;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.total
     *
     * @mbg.generated
     */
    private Integer total;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.discount
     *
     * @mbg.generated
     */
    private BigDecimal discount;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.min
     *
     * @mbg.generated
     */
    private BigDecimal min;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.limit
     *
     * @mbg.generated
     */
    @TableField(value = "`limit`")
    private Short limit;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.type
     *
     * @mbg.generated
     */
    private Short type;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.status
     *
     * @mbg.generated
     */
    private Short status;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.goods_type
     *
     * @mbg.generated
     */
    private Short goodsType;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.goods_value
     *
     * @mbg.generated
     */
    @TableField(value = "goods_value", typeHandler = JsonIntegerArrayTypeHandler.class)
    private Integer[] goodsValue;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.code
     *
     * @mbg.generated
     */
    private String code;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.time_type
     *
     * @mbg.generated
     */
    private Short timeType;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.days
     *
     * @mbg.generated
     */
    private Short days;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.start_time
     *
     * @mbg.generated
     */
    private LocalDate startTime;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.end_time
     *
     * @mbg.generated
     */
    private LocalDate endTime;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.add_time
     *
     * @mbg.generated
     */
    private LocalDateTime addTime;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.update_time
     *
     * @mbg.generated
     */
    private LocalDateTime updateTime;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dts_coupon.deleted
     *
     * @mbg.generated
     */
    private Boolean deleted;
}